﻿<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="View_ViewState.aspx.cs" Inherits="AFCEPF.Samples.WebSamples.Concepts.View_ViewState" %>
<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" runat="server">
    <style type="text/css">
        .style1
        {
            width: 100%;
        }
        #Text1
        {
            width: 187px;
        }
        .style2
        {
            height: 22px;
        }
    </style>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
 <h3>
        Usage du ViewState
    </h3>
    <p>
        Le ViewState est un mécanisme permettant aux controles de garder leur valeur
        après un PostBack (une re-demande de la page actuelle au server).
        <br />
        Seuls les contrôles Web (et non les contrôles HTML) possèdent ce mécanisme
        de ViewState.
        <br />
        <h4>Exemple 1 : Usage Standard</h4>
        <br />
        Dans cet exemple, on constate que seul le contrôle Web conserve sa valeur
        après un PostBack déclenché par le click du bouton.
        On peut, pour la majorité des contrôles, activer ou désactiver sélectivement
        le ViewState pour chaque contrôle.

    </p>
    <table cellpadding="0" cellspacing="0" class="style1">
        <tr>
            <td>
                <asp:Label ID="Label1" runat="server" Text="Ceci un est contrôle HTML INPUT"></asp:Label>
            </td>
        </tr>
        <tr>
            <td>
                <input id="Text1" type="text" /></td>
        </tr>
        <tr>
            <td>
                &nbsp;</td>
        </tr>
        <tr>
            <td>
                <asp:Label ID="Label2" runat="server" Text="Ceci est un WebControl TextBox "></asp:Label>
            </td>
        </tr>
        <tr>
            <td class="style2">
                <asp:TextBox ID="TextBox1" runat="server" Width="185px"></asp:TextBox>
            </td>
        </tr>
    </table>

    <br />

    <asp:Button ID="Button1" runat="server" Text="PostBack !" Width="183px" />


    <p>
    On constate qu'après un PostBack, seul le control TextBox a conservé sa valeur.
    <br />

    <b>Note :</b>
    <br />
    Le contenu du ViewState est en réalité contenu dans un champ caché (de type html input) 
    nommé __VIEWSTATE et encrypté.
    </p>


     <br />

</asp:Content>
